package com.jzy.chatglmsdk18753goldn.executor.aigc.deepseek;

import com.jzy.chatglmsdk18753goldn.IOpenAiApi;
import com.jzy.chatglmsdk18753goldn.executor.Executor;
import com.jzy.chatglmsdk18753goldn.model.ChatCompletionCommonRequest;
import com.jzy.chatglmsdk18753goldn.model.ChatCompletionSyncResponse;
import com.jzy.chatglmsdk18753goldn.model.ImageCompletionRequest;
import com.jzy.chatglmsdk18753goldn.model.ImageCompletionResponse;
import com.jzy.chatglmsdk18753goldn.session.Configuration;
import okhttp3.OkHttpClient;
import okhttp3.sse.EventSource;
import okhttp3.sse.EventSourceListener;

import java.util.concurrent.CompletableFuture;

public class DeepSeekExcutor implements Executor {
    /**
     * OpenAi 接口
     */
    private final Configuration configuration;
    /**
     * 工厂事件
     */
    private final EventSource.Factory factory;
    /**
     * 统一接口
     */
    private IOpenAiApi openAiApi;

    private OkHttpClient okHttpClient;

    public DeepSeekExcutor(Configuration configuration) {
        this.configuration = configuration;
        this.factory = configuration.createRequestFactory();
        this.openAiApi = configuration.getOpenAiApi();
        this.okHttpClient = configuration.getOkHttpClient();
    }

    @Override
    public EventSource completions(ChatCompletionCommonRequest chatCompletionRequest, EventSourceListener eventSourceListener) throws Exception {
        return null;
    }

    @Override
    public CompletableFuture<String> completions(ChatCompletionCommonRequest chatCompletionRequest) throws InterruptedException {
        return null;
    }

    @Override
    public ChatCompletionSyncResponse completionsSync(ChatCompletionCommonRequest chatCompletionRequest) throws Exception {
        return null;
    }

    @Override
    public ImageCompletionResponse genImages(ImageCompletionRequest request) throws Exception {
        return null;
    }
}
